Information processing device, information processing method and non-transitory storage medium

ABSTRACT

An information processing device executes: identifying a first region where a predetermined module is insufficient in number, the predetermined module being a module that is attachable to and detachable from a movable object; identifying a second region where the predetermined module is superfluous in number; instructing a movable object equipped with the predetermined module in the second region to provide the superfluous predetermined module to a predetermined movable object; instructing the predetermined movable object to cause the predetermined module to be attached in the second region and transport the predetermined module to the first region; and instructing a movable object not equipped with the predetermined module in the first region to receive the predetermined module transported to the first region by the predetermined movable object.

INCORPORATION BY REFERENCE

The disclosure of Japanese Patent Application No. 2019-030455 filed onFeb. 22, 2019 including the specification, drawings and abstract isincorporated herein by reference in its entirety.

BACKGROUND 1. Technical Field

The disclosure relates to an information processing device, aninformation processing method and a non-transitory storage medium.

2. Description of Related Art

There is known a system to check whether a parcel can be delivered by amovable object that performs autonomous traveling when a method ofdelivery of the parcel by the movable object that performs theautonomous traveling is designated (see Japanese Patent ApplicationPublication No. 2018-124676 (JP 2018-124676 A), for example).

SUMMARY

JP 2018-124676 A includes the description about the movable object thatperforms the delivery of the parcel, but includes no description aboutanother service. Therefore, for application to another service, there isroom for improvement. An object of the disclosure is to efficiently usea module of a movable object.

An aspect of the disclosure is an information processing deviceincluding a control unit that executes: identifying a first region wherea predetermined module is insufficient in number, the predeterminedmodule being a module that is attachable to and detachable from amovable object; identifying a second region where the predeterminedmodule is superfluous in number; instructing a movable object equippedwith the predetermined module in the second region to provide thesuperfluous predetermined module to a predetermined movable object;instructing the predetermined movable object to cause the predeterminedmodule to be attached in the second region and transport thepredetermined module to the first region; and instructing a movableobject not equipped with the predetermined module in the first region toreceive the predetermined module transported to the first region by thepredetermined movable object.

An aspect of the disclosure is an information processing method in whicha computer executes: identifying a first region where a predeterminedmodule is insufficient in number, the predetermined module being amodule that is attachable to and detachable from a movable object;identifying a second region where the predetermined module issuperfluous in number; instructing a movable object equipped with thepredetermined module in the second region to provide the superfluouspredetermined module to a predetermined movable object; instructing thepredetermined movable object to cause the predetermined module to beattached in the second region and transport the predetermined module tothe first region; and instructing a movable object not equipped with thepredetermined module in the first region to receive the predeterminedmodule transported to the first region by the predetermined movableobject.

An aspect of the disclosure is a non-transitory storage medium storinginstructions that are executable by one or more processors and thatcause the one or more processors to perform functions including:identifying a first region where a predetermined module is insufficientin number, the predetermined module being a module that is attachable toand detachable from a movable object; identifying a second region wherethe predetermined module is superfluous in number; instructing a movableobject equipped with the predetermined module in the second region toprovide the superfluous predetermined module to a predetermined movableobject; instructing the predetermined movable object to cause thepredetermined module to be attached in the second region and transportthe predetermined module to the first region; and instructing a movableobject not equipped with the predetermined module in the first region toreceive the predetermined module transported to the first region by thepredetermined movable object.

With the disclosure, it is possible to efficiently use the module of themovable object.

BRIEF DESCRIPTION OF THE DRAWINGS

Features, advantages, and technical and industrial significance ofexemplary embodiments of the disclosure will be described below withreference to the accompanying drawings, in which like numerals denotelike elements, and wherein:

FIG. 1 is a diagram showing a schematic configuration of an automaticdriving system according to an embodiment;

FIG. 2 is a diagram for describing movement of vehicles;

FIG. 3 is a block diagram schematically showing an example of eachconfiguration of a vehicle and a server that constitute the automaticdriving system according to the embodiment;

FIG. 4 is a diagram showing an example of a functional configuration ofthe server;

FIG. 5 is a diagram illustrating a table configuration of vehicleinformation;

FIG. 6 is a diagram illustrating a table configuration of adjustmentinformation;

FIG. 7 is a diagram showing an example of a functional configuration ofthe vehicle;

FIG. 8 is an example of a flowchart of a process of sending an operationcommand according to the embodiment; and

FIG. 9 is an example of a flowchart of a process of causing the vehicleto travel according to the embodiment.

DETAILED DESCRIPTION OF EMBODIMENTS

For example, an information processing device that is an aspect of thedisclosure may be included in a movable object, or may be included in aserver that manages the movable object. The movable object may be amovable object that can be equipped with only one module, or may be amovable object that can be equipped with two or more modules. Further,multiple kinds of movable objects different in the number of modulesthat can be equipped may exist in a mixed manner. A control unitinstructs a movable object equipped with a predetermined module in asecond region to provide a superfluous predetermined module to apredetermined movable object. For example, the control unit instructsthe movable object equipped with the predetermined module to move to afactory and cause the predetermined module to be detached in thefactory, or instructs the movable object equipped with the predeterminedmodule to directly give the predetermined module to the predeterminedmovable object. The predetermined movable object can be equipped with aplurality of predetermined modules. Examples of the predeterminedmovable object include a dedicated movable object that transports thepredetermined module, a movable object that goes to get thepredetermined module from a first region, a movable object that isequipped with one or more predetermined modules in the second region, amovable object that is not equipped with the predetermined module in thesecond region, and a movable object that is disposed in another regionother than the first region and the second region. In the second region,instead of the predetermined module, another module may be equipped inthe movable object that provides the predetermined module.

The control unit instructs the predetermined movable object to cause thepredetermined module to be attached in the second region and transportthe predetermined module to the first region. Examples of theinstruction include an instruction to cause the predetermined module tobe attached in the second region, an instruction to transport thepredetermined module from the second region to the first region, and aninstruction to provide the predetermined module in the first region. Theinstruction to provide the predetermined module may be an instruction tocause the predetermined module to be detached in a factory, or may be aninstruction to directly give the predetermined module to a movableobject in the first region. The predetermined module transported to thefirst region by the predetermined movable object is provided to amovable object in the first region that is not equipped with thepredetermined module. The control unit instructs the movable object notequipped with the predetermined module in the first region to receivethe predetermined module. Examples of the instruction include aninstruction to travel to a factory and cause the predetermined module tobe attached in the factory and an instruction to directly receive thepredetermined module from the predetermined movable object.

In this way, the insufficiency of the predetermined module in the firstregion can be resolved by the predetermined module transported from thesecond region, and therefore, it is possible to efficiently use thepredetermined module. Accordingly, it is not necessary to prepare morepredetermined modules than is needed, and therefore, it is possible toreduce the cost of production of the predetermined module. Further,although warehouses and the like for preserving predetermined modulesare necessary when more predetermined modules than is needed areprepared, it is possible to reduce the warehouses and the like.

The control unit may identify the first region based on data acquired bya sensor that is included in the movable object and that detects asurrounding environment.

For example, in the case where an image sensor detects, for example, adisaster such as a fire, the control unit may identify the first regionby determining that a module allowing the movable object to function asan ambulance car or a fire truck is insufficient in number. Further, thenumber of modules that are needed can vary depending on the scale of thedisaster or the like. Accordingly, the control unit may know the scaleof the disaster or the like based on the data acquired by the sensor,and may determine whether the module is insufficient in number. Thecontrol unit may identify the first region based on a demand from auser. For example, when the user performs an event, a module allowingthe movable object to function as a lighting equipment or audioequipment can be insufficient in number. In such a case, with the demandfrom the user, the control unit can easily identify the first region.

The control unit may identify the second region based on a working stateof the predetermined module.

For example, when the predetermined module is in the working state, thecontrol unit may determine that the predetermined module is notsuperfluous in number. Further, for example, when the predeterminedmodule is not in the working state, the control unit may determine thatthe predetermined module is superfluous in number. In this way, thecontrol unit can easily identify the second region.

Hereinafter, embodiments of the disclosure will be described based onthe drawings. The following configurations of the embodiments areexamples, and the disclosure is not limited to the configurations of theembodiments. Further, the following embodiments can be combined ifpossible.

Embodiment

Outline of Automatic Driving System

FIG. 1 is a diagram showing a schematic configuration of an automaticdriving system 1 according to an embodiment. For example, the automaticdriving system 1 includes vehicles 10 and a server 30. Each vehicle 10is an example of the movable object. Various modules are attachable toand detachable from the vehicle 10. By changing the module that isequipped in the vehicle 10, it is possible to change the function of thevehicle 10. The vehicle 10 can be equipped with a plurality of modules.Each module can be equipped in the vehicle 10, so as not to function.

In the automatic driving system 1, in the case where the predeterminedmodule is insufficient in number in the first region and where thepredetermined module is superfluous in number in another region (secondregion), the vehicle 10 transports the superfluous predetermined modulefrom the second region to the first region. On this occasion, if eachvehicle 10 transports the predetermined module from the second region tothe first region, transportation cost increases, and therefore, thevehicle 10 that transports the predetermined module from the secondregion to the first region is equipped with a plurality of predeterminedmodules. That is, the vehicle 10 equipped with the plurality ofpredetermined modules in the second region travels to the first region,and then, provides the predetermined modules to a plurality of vehicles10 in the first region. In this way, in the first region, theinsufficiency of the predetermined module is resolved. Further, it ispossible to decrease the transportation cost for the module. Further, itis possible to decrease the number of predetermined modules to beproduced.

The vehicle 10 and the server 30 are connected with each other through anetwork N1. As the network N1, for example, a world-scale publiccommunication network such as the internet, a wide area network (WAN),and other communication networks may be employed. Further, the networkN1 may include a wireless network such as a telephone communicationnetwork for mobile phones or WiFi.

FIG. 2 is a diagram for describing movement of vehicles 10. In FIG. 1and FIG. 2, vehicles 10A are vehicles (hereinafter, also referred to asfirst vehicles) that receive modules 40 in a first region L1. Further,vehicles 10B are vehicles (hereinafter, also referred to as secondvehicles) that give modules 40 in a second region L2. Further, a vehicle10C is a vehicle (hereinafter, also referred to as a third vehicle) thatis equipped with a plurality of modules 40 and transports the modules 40from the second region L2 to the first region L1. There may be aplurality of first vehicles 10A, there may be a plurality of secondvehicles 10B, and there may be a plurality of third vehicles 10C.Hereinafter, the first vehicle 10A, the second vehicle 10B and the thirdvehicle 10C are referred to as merely vehicles 10, if being notdistinguished. In the first region L1, there is provided a first factoryF1 where the module 40 can be attached and detached. In the secondregion L2, there is provided a second factory F2 where the module 40 canbe attached and detached. All modules 40 shown in FIG. 2 are modulesthat have the same function. For example, each of the modules 40 is amodule that allows the vehicle 10 to function as an ambulance car or afire truck at the time of a disaster, or a module that allows thevehicle 10 to function as a lighting equipment or audio equipment at thetime of an event.

The server 30 identifies the first region L1 where the module 40 isinsufficient in number, and then, identifies the second region L2 wherethe module 40 is superfluous in number. The server 30 generates anoperation command for instructing the second vehicle 10B in the secondregion L2 to move to the second factory F2 and cause the module 40 to bedetached in the second factory F2. Further, the server 30 generates anoperation command for instructing the third vehicle 10C to move to thesecond factory F2, cause a plurality of modules 40 to be attached, moveto the first factory F1, and cause the modules 40 to be detached.Further, the server 30 generates an operation command for instructingthe first vehicle 10A to move to the first factory F1 and cause themodule 40 to be attached in the first factory F1. The operation commandsgenerated by the server 30 are sent from the server 30 to the vehicles10. Each vehicle 10 receives the operation command, and then, performsautonomous traveling in accordance with the operation command.

Hardware Configuration

Hardware configurations of the vehicle 10 and the server 30 will bedescribed based on FIG. 3. FIG. 3 is a block diagram schematicallyshowing an example of each configuration of the vehicle 10 and theserver 30 that constitute the automatic driving system 1 according tothe embodiment.

The server 30 has a general computer configuration. The server 30includes a processor 31, a main storage unit 32, an auxiliary storageunit 33, and a communication unit 34. They are connected with each otherthrough a bus.

The processor 31 is a central processing unit (CPU), a digital signalprocessor (DSP), or the like. The processor 31 controls the server 30,and performs various information processing computations. The processor31 is an example of the “control unit”. The main storage unit 32 is arandom access memory (RAM), a read only memory (ROM), or the like. Theauxiliary storage unit 33 is an erasable programmable ROM (EPROM), ahard disk drive (HDD), a removable medium, or the like. In the auxiliarystorage unit 33, an operating system (OS), various programs, varioustables and the like are stored. The programs stored in the auxiliarystorage unit 33 are loaded and executed in a work area of the mainstorage unit 32 by the processor 31, and constituent units and the likeare controlled by execution of the programs. Thereby, the server 30realizes a function consistent with a predetermined purpose. Each of themain storage unit 32 and the auxiliary storage unit 33 is a recordingmedium that can be read by a computer. The server 30 may be constitutedby a single computer, or may be constituted by a plurality ofcooperating computers. Further, information to be stored in theauxiliary storage unit 33 may be stored in the main storage unit 32.Further, information to be stored in the main storage unit 32 may bestored in the auxiliary storage unit 33.

The communication unit 34 is means for performing communication with thevehicle 10 and a user terminal through the network N1. For example, thecommunication unit 34 is a local area network (LAN) interface board, ora wireless communication circuit for wireless communication. The LANinterface board or the wireless communication circuit is connected withthe network N1.

A series of processes to be executed in the server 30 may be executed byhardware, or may be executed by software. The hardware configuration ofthe server 30 is not limited to the hardware configuration shown in FIG.3. Further, a part or whole of the configuration of the server 30 may beequipped in the vehicle 10.

Next, the vehicle 10 will be described. The vehicle 10 includes aprocessor 11, a main storage unit 12, an auxiliary storage unit 13, aninput unit 14, an output unit 15, a communication unit 16, a positionalinformation sensor 17, an environmental information sensor 18, and adrive unit 19. They are connected with each other through a bus. Theprocessor 11, the main storage unit 12 and the auxiliary storage unit 13are the same as the processor 31, the main storage unit 32 and theauxiliary storage unit 33 of the server 30, and therefore, thedescription is omitted.

The input unit 14 is means for accepting an input operation by the user,and is a touch panel or a push button, for example. The output unit 15is means for presenting information to the user, and is a liquid crystaldisplay (LCD), an electroluminescence (EL) panel, a speaker, or a lamp,for example. The input unit 14 and the output unit 15 may be constitutedby a single touch panel display. For example, the input unit 14 and theoutput unit 15 can be used by a user that uses the vehicle 10 or a userthat manages the vehicle 10. The communication unit 16 is communicationmeans for connecting the vehicle 10 with the network N1. For example,the communication unit 16 is a circuit for performing communication withanother device (for example, the server 30) through the network N1,using a telephone communication network such as a mobile communicationservice (3rd generation (3G)) and long term evolution (LTE), or wirelesscommunication such as WiFi.

The positional information sensor 17 acquires positional information(for example, latitude and longitude) about the vehicle 10, with apredetermined period. For example, the positional information sensor 17is a global positioning system (GPS) receiving unit or a WiFicommunication unit. For example, the information acquired by thepositional information sensor 17 is recorded in the auxiliary storageunit 13 or the like, and is sent to the server 30.

The environmental information sensor 18 is means for sensing a state ofthe vehicle 10 or sensing a surrounding area of the vehicle 10. As thesensor for sensing the state of the vehicle 10, there are anacceleration sensor, a speed sensor and an azimuth sensor. As the sensorfor sensing the surrounding area of the vehicle 10, there are an imagesensor, a laser scanner, a LIDAR, a radar and the like.

The drive unit 19 causes the vehicle 10 to travel based on a controlcommand generated by the processor 11. For example, the drive unit 19 isconfigured to include a motor for driving wheels included in the vehicle10, an inverter, a brake, a steering mechanism, and the like. The motor,the brake and the like are driven in accordance with the controlcommand, so that the autonomous driving of the vehicle 10 is realized.

Functional Configuration: Server

FIG. 4 is a diagram showing an example of a functional configuration ofthe server 30. The server 30 includes a vehicle management unit 301, anadjustment unit 302, an operation command generation unit 303, a vehicleinformation DB 311, an adjustment information DB 312, and a mapinformation DB 313, as functional constituent elements. For example, thevehicle management unit 301, the adjustment unit 302 and the operationcommand generation unit 303 are functional constituent elements that areprovided when the processor 31 of the server 30 executes variousprograms stored in the auxiliary storage unit 33.

Each of the vehicle information DB 311, the adjustment information DB312 and the map information DB 313 is, for example, a relationaldatabase that is constructed when a program of a database managementsystem (DBMS) to be executed by the processor 31 manages data stored inthe auxiliary storage unit 33. Processes by one of the functionalconstituent elements of the server 30, or some of the processes may beexecuted by another computer that is connected with the network N1.

The vehicle management unit 301 manages vehicle information. The vehicleinformation includes positional information about the vehicle 10 andmodule information about the vehicle 10. The positional informationabout the vehicle 10 is information relevant to the current position ofthe vehicle 10, and the module information about the vehicle 10 isinformation relevant to the module equipped in the vehicle 10. Forexample, the vehicle management unit 301 acquires and manages thepositional information sent from the vehicle 10 with a predeterminedperiod, or the positional information sent from the vehicle 10 inresponse to a request from the server 30. The vehicle management unit301 stores the positional information in the vehicle information DB 311,in association with a vehicle ID. For example, the vehicle managementunit 301 acquires and manages the module information sent from thevehicle 10 with a predetermined period, or the module information sentfrom the vehicle 10 in response to a request from the server 30. In thecase where the module is equipped in the vehicle 10 by an instructionfrom the server 30, the vehicle management unit 301 may storeinformation relevant to the module in the instruction from the server 30to the vehicle 10, in the vehicle information DB 311, in associationwith the vehicle ID.

Further, the module information about the vehicle 10 includesinformation indicating a working status of the module. Therefore, thevehicle management unit 301 manages the working status of the moduleequipped in the vehicle 10. In the case where the vehicle 10 is equippedwith a plurality of modules, the vehicle management unit 301 manages theworking status of each module. In the case where the module equipped inthe vehicle 10 is functioning, it can be said that the module is in aworking state. On the other hand, in the case where the module isequipped in the vehicle 10 but is not functioning, it can be said thatthe module is in a standby state. The vehicle management unit 301 storesthe working status of each module, in the vehicle information DB 311, inassociation with the vehicle ID. For example, the working status may besent from the vehicle 10 with a predetermined period. Further, in thecase where the module works by an instruction from the operation commandgeneration unit 303, the vehicle management unit 301 may acquire theworking status in response to an instruction from the operation commandgeneration unit 303.

The adjustment unit 302 adjusts the redundancy or insufficiency of themodule for each region. For the adjustment, the adjustment unit 302identifies the region (first region L1) where the module is insufficientin number and the region (second region L2) where the module issuperfluous in number. For example, the adjustment unit 302 identifiesthe region where the module is insufficient in number, based on a noticefrom the vehicle 10 or a notice from a predetermined user. The vehicle10 or the predetermined user may give a notice indicating that themodule is insufficient in number, or a notice indicating the regionwhere the module is insufficient in number. The predetermined userincludes a predetermined public organization or a predetermined mediaorganization.

At the time of occurrence of the event, the adjustment unit 302identifies the number of modules that are needed, and compares thenumber of modules that are needed, with the number of modules that existin a region where the event occurs. Then, when the number of the modulesthat exist in the region where the event occurs is smaller than thenumber of the modules that are needed for the event, the adjustment unit302 determines that the module is insufficient in number in the region.Thereby, the region where the module is insufficient in number isidentified. The number of the modules that exist in the region where theevent occurs is acquired from information stored in the later-describedvehicle information DB 311. The number of the modules that are needed atthe time of the occurrence of the event may be previously decided foreach event, or may be decided based on the notice from the predetermineduser. The number of the modules that are needed at the time of theoccurrence of the event may be changed depending on the scale of theevent. The number of modules that correspond to the scale of the eventis previously decided. The adjustment unit 302 calculates the number oflacking modules, by subtracting the number of the modules that exist inthe region where the event occurs from the number of the modules thatare needed for the event.

For example, the adjustment unit 302 detects the occurrence of thedisaster, based on a notice from the vehicle 10 that detects theoccurrence of the disaster or a notice from the predetermined user. Forexample, the notice may include information such as the kind of thedisaster, the scale of the disaster and the place of the occurrence ofthe disaster. For example, the vehicle 10 detects the occurrence of thedisaster, the kind of the disaster and the scale of the disaster, basedon the information sensed by the environmental information sensor 18,and sends the detected information to the server 30. Further, thepredetermined user may perform a predetermined input to a terminal orthe like possessed by the predetermined user, and thereby, theinformation relevant to the occurrence of the disaster, the kind of thedisaster, the scale of the disaster and the like may be sent to theserver 30. When the adjustment unit 302 detects the occurrence of thedisaster, the adjustment unit 302 determines whether a module capable ofcoping with the disaster is insufficient in number in the occurrenceregion of the disaster. The module capable of coping with the disasteris previously decided depending on the kind of the disaster. Further,the number of modules that are needed depending on the scale of thedisaster is previously decided. In the case where the number of themodules that exist in the occurrence region of the disaster is smallerthan the number of the modules that are needed depending on the scale ofthe disaster, the adjustment unit 302 determines that the module isinsufficient in number in the occurrence region of the disaster. In thisway, the adjustment unit 302 detects the insufficiency of the module,and identifies the first region L1 where the module is insufficiency innumber.

Further, the adjustment unit 302 identifies a region where the modulethat is insufficient in number in the first region L1 is superfluous innumber. The vehicle 10 or the predetermined user may give a noticeindicating that the module is superfluous in number, or a noticeindicating the region where the module is superfluous in number. Forexample, the number of modules that are needed when no event occurs ispreviously set for each region, and the adjustment unit 302 determinesthat the module is superfluous in number in a region where more modulesthan the number of the modules that are needed exist. Further, forexample, for a region where modules have been transported from anotherregion at the time of the occurrence of a previous event, the adjustmentunit 302 may determine that the module is superfluous in number, afterthe event finishes. Further, the adjustment unit 302 may determine thatall modules in the standby state are superfluous modules. In this way,the adjustment unit 302 detects that the module is superfluous innumber, and identifies the second region L2 where the module issuperfluous in number.

After the adjustment unit 302 identifies the first region L1 where themodule is insufficient in number and the second region L2 where themodule is superfluous in number, the adjustment unit 302 selects thesecond vehicle 10B from which the module is detached in the secondregion L2, the third vehicle 10C that transports the module from thesecond region L2 to the first region L1, and the first vehicle 10A towhich the module is attached in the first region L1 For example, as thesecond vehicle 10B, the adjustment unit 302 selects vehicles 10 thatexist in the second region L2 and that are equipped with the module, toa number corresponding to the number of the lacking modules. On thisoccasion, the adjustment unit 302 may select second vehicles 10B, in theorder from the second vehicle 10B closest to the second factory F2.Further, as the first vehicle 10A, the adjustment unit 302 selectsvehicles 10 that exist in the first region L1 and that are not equippedwith the module, to a number corresponding to the number of the lackingmodules. On this occasion, the adjustment unit 302 may select firstvehicles 10A, in the order from the first vehicle 10A closest to thefirst factory F1. Further, the adjustment unit 302 selects the thirdvehicle 10C, for example, based on the transportation cost and the like.For example, as the third vehicle 10C, the adjustment unit 302 selects avehicle 10 that can be equipped with more modules, a vehicle 10 thatrequires the lowest electric power amount for the traveling from thesecond region L2 to the first region L1, or the like. The adjustmentunit 302 may select the third vehicle 10C from vehicles 10 that arepreviously equipped with the module in the second region L2.

The operation command generation unit 303 generates operation commandsrespectively corresponding to the first vehicle 10A, the second vehicle10B and the third vehicle 10C. For the second vehicle 10B, the operationcommand generation unit 303 generates an operation command to move tothe second factory F2 and cause the module to be detached in the secondfactory F2. For the first vehicle 10A, the operation command generationunit 303 generates an operation command to move to the first factory F1and cause the module to be attached in the first factory F1. For thethird vehicle 10C, the operation command generation unit 303 generatesan operation command to move to the second factory F2, cause the moduleto be attached in the second factory F2, move to the first factory F1,and cause the module to be detached in the first factory F1. Theoperation command generation unit 303 sends the generated operationcommands to corresponding vehicles 10. The operation command generationunit 303 according to the embodiment may generate a movement route basedon map information stored in the later-described map information DB 313.The movement route is generated so as to be a route in accordance with apreviously decided rule, for example, so as to be a route allowing theshortest movement distance of the vehicle 10, or a route allowing theshortest movement time of the vehicle 10. In this case, the operationcommand generation unit 303 sends the operation command including themovement route, to the vehicle 10. For the first vehicle 10A equippedwith the module, the operation command generation unit 303 generates theoperation command such that the first vehicle 10A copes with the eventthereafter. In the generation of the operation command for coping withthe event, a well-known technology can be used.

The vehicle information is stored in the auxiliary storage unit 33, sothat the vehicle information DB 311 is formed, and in the vehicleinformation DB 311, the vehicle ID and the vehicle information areassociated with each other. Here, a configuration of the vehicleinformation that is stored in the vehicle information DB 311 will bedescribed based on FIG. 5. FIG. 5 is a diagram illustrating a tableconfiguration of the vehicle information. The vehicle information tablehas fields of vehicle ID, positional information, module and workingstatus. In the vehicle ID field, identification information identifyingthe vehicle 10 is input. In the positional information field, thepositional information sent by the vehicle 10 is input. The positionalinformation is information indicating the current place of the vehicle10. In the module field, information indicating a module equipped in thevehicle 10 is input. The vehicle 10 can be equipped with a plurality ofmodules, and in FIG. 5, each vehicle 10 is equipped with four modules.In the working status field, information indicating the working statusof the module is input. For example, the working status may be sent fromthe vehicle 10. “STANDBY” shown in FIG. 5 indicates a state where themodule is not working, and “WORKING” indicates a state where the moduleis working.

Adjustment information (information relevant to the number of modulesthat are needed for each region) is stored in the auxiliary storage unit33, so that the adjustment information DB 312 is formed. Here, aconfiguration of the adjustment information that is stored in theadjustment information DB 312 will be described based on FIG. 6. FIG. 6is a diagram illustrating a table configuration of the adjustmentinformation. The adjustment information table has fields of region,module and required number. In the region field, information foridentifying a region is input. For example, the region may be set basedon an administrative district such as a city, a town or a village. Whenthe adjustment unit 302 identifies the first region, informationindicating the first region is input in the region field. In the modulefield, information for identifying the module that is insufficient innumber in the first region is input. In the required number field,information for identifying the number of modules that are needed in thefirst region is input. For example, the adjustment unit 302 calculatesthe required number of modules, by subtracting the number of modulesthat exist in the first region from the number of modules that areneeded for the event, and inputs information indicating the requirednumber, in the required number field.

In the map information DB 313, map information including map data andpoint-of-interest (POI) information such as a character or photographindicating a characteristic of each spot on the map data is stored. Themap information DB 313 may be provided from another system connectedwith the network N1, for example, from a geographic information system(GIS). The map data includes information relevant to the location of afactory in each region where the module is attachable to and detachablefrom the vehicle 10.

Functional Configuration: Vehicle

FIG. 7 is a diagram showing an example of a functional configuration ofthe vehicle 10. The vehicle 10 includes an operation plan generationunit 101, an environment detection unit 102, a vehicle control unit 103,and a positional information sending unit 104, as functional constituentelements. For example, the operation plan generation unit 101, theenvironment detection unit 102, the vehicle control unit 103 and thepositional information sending unit 104 are functional constituentelements that are provided when the processor 11 of the vehicle 10executes various programs stored in the auxiliary storage unit 13.

The operation plan generation unit 101 acquires the operation commandfrom the server 30, and generates an operation plan for the vehicle 10.The operation plan generation unit 101 calculates the movement route ofthe vehicle 10, based on the operation command given from the server 30,and generates an operation plan for moving along the movement route.

The environment detection unit 102 detects an environment in theperiphery of the vehicle 10 that is necessary for autonomous traveling,based on the data acquired by the environmental information sensor 18.For example, objects to be detected are the number and positions oflanes, the number and positions of other movable objects existing in theperiphery of the vehicle 10, the number and positions of obstacles (forexample, a pedestrian, a bicycle, a structure and a building) existingin the periphery of the vehicle 10, the structure of the road, trafficsigns, and the like, but are not limited to them. Any object may bedetected if the object is necessary for autonomous traveling. Forexample, in the case where the environmental information sensor 18 is astereo camera, the detection of physical objects in the periphery of thevehicle 10 is performed by image processing of image data picked up bythe stereo camera. Data (hereinafter, referred to as environmental data)that is relevant to the peripheral environment of the vehicle 10 andthat is detected by the environment detection unit 102 is sent to thelater-described vehicle control unit 103. Further, the environmentdetection unit 102 detects the occurrence of the event, based on thedata acquired by the environmental information sensor 18. For example,the environment detection unit 102 detects the occurrence of thedisaster, based on an image picked up by the image sensor.

The vehicle control unit 103 generates a control command for controllingthe autonomous traveling of the vehicle 10, based on the operation plangenerated by the operation plan generation unit 101, the environmentaldata generated by the environment detection unit 102, and the positionalinformation about the vehicle 10 acquired by the positional informationsensor 17. For example, the vehicle control unit 103 generates thecontrol command, such that the vehicle 10 travels along a predeterminedroute and no obstacle enters a predetermined safety area around thevehicle 10. The generated control command is sent to the drive unit 19.As a method for generating the control command for the autonomousmovement of the vehicle 10, a known method can be employed.

The positional information sending unit 104 sends the positionalinformation acquired from the positional information sensor 17, to theserver 30, through the communication unit 16. The timing when thepositional information sending unit 104 sends the positional informationcan be appropriately set. For example, the positional information may besent periodically, may be sent at the timing when the positionalinformation sending unit 104 sends some kind of information to theserver 30, or may be sent in response to a request from the server 30.The positional information sending unit 104 sends the positionalinformation to the server 30, together with the identificationinformation (vehicle ID) uniquely identifying the own vehicle. Thevehicle ID identifying the vehicle 10 is previously assigned.

Processing Flow: Server

Next, a process by which the server 30 sends the operation command tothe vehicle 10 will be described. FIG. 8 is an example of a flowchart ofa process of sending the operation command according to the embodiment.The process shown in FIG. 8 is executed by the processor 31 of theserver 30, at a predetermined time interval. Here, it is assumed thatthe server 30 has already received necessary information forconstructing the vehicle information DB 311 and the adjustmentinformation DB 312.

In step S101, the adjustment unit 302 determines whether theinsufficiency of the module has been detected. The adjustment unit 302accesses the adjustment information DB 312, and determines whether thefirst region L1 where the module is insufficient in number has beennewly added. In the case where the positive determination is made instep S101, the routine proceeds to step S102, and in the case where thenegative determination is made, the routine ends.

In step S102, the adjustment unit 302 identifies the first region L1.The adjustment unit 302 accesses the adjustment information DB 312, andidentifies the first region L1 where the module is insufficient innumber. Next, in step S103, the adjustment unit 302 identifies thesecond region L2. The adjustment unit 302 accesses the vehicleinformation DB 311, and picks up a region where the number of moduleseach of which is the same as the insufficient module in step S102 andhas the working status of “STANDBY” is equal to or more than therequired number in the first region L1. A region where each vehicle 10is disposed is identified based on the positional information about eachvehicle 10. The region picked up in this way is identified as the secondregion L2 where the module is superfluous in number.

In step S104, the adjustment unit 302 selects the first vehicle 10A. Theadjustment unit 302 selects first vehicles 10A, to the required numberof modules, from vehicles 10 that exist in the first region L1identified in step S102 and that are not equipped with the module. Forexample, the adjustment unit 302 may select the first vehicles 10A, inthe order from the first vehicle 10A closest to the first factory F1. Instep S105, the operation command generation unit 303 generates theoperation commend for the first vehicle 10A. For the first vehicle 10A,the operation command generation unit 303 generates the operationcommand to move to the first factory F1 and cause the module to beattached in the first factory F1.

In step S106, the adjustment unit 302 selects the second vehicle 10B.The adjustment unit 302 selects second vehicles 10B, to the requirednumber of modules, from second vehicles 10B that are positioned in thesecond region L2 identified in step S103 and that are equipped with themodule having the working status of “STANDBY”. For example, theadjustment unit 302 may select the second vehicles 10B, in the orderfrom the second vehicle 10B closest to the second factory F2. In stepS107, the operation command generation unit 303 generates the operationcommand for the second vehicle 10B. For the second vehicle 10B, theoperation command generation unit 303 generates the operation command tomove to the second factory F2 and cause the module to be detached in thesecond factory F2.

In step S108, the adjustment unit 302 selects the third vehicle 10C. Theadjustment unit 302 selects third vehicles 10C, to the required numberof modules, from vehicles 10 that are positioned in the second region L2identified in step S103. The third vehicle 10C is equipped with aplurality of modules of the same kind. In step S109, the operationcommand generation unit 303 generates the operation command for thethird vehicle 10C. For the third vehicle 10C, the operation commandgeneration unit 303 generates the operation command to move to thesecond factory F2, cause a plurality of modules to be attached, move tothe first factory F1, and cause the modules to be detached.

In the second factory F2, the module may be transferred from the secondvehicle 10B to the third vehicle 10C by a person, or may be transferredfrom the second vehicle 10B to the third vehicle 10C by an automatedmachine. Further, in the first factory F1, the module may be transferredfrom the third vehicle 10C to the first vehicle 10A by a person, or maybe transferred from the third vehicle 10C to the first vehicle 10A by anautomated machine. The transfer of the module may be performed, forexample, in a parking place or the like, without being limited to thefirst factory F1 and the second factory F2. In the first factory F1, amodule that is equipped in the first vehicle 10A and that is not neededat the present time may be transferred to the third vehicle 10C.Further, in the second factory F2, a module that is equipped in thethird vehicle 10C and that is not needed at the present time may betransferred to the second vehicle 10B. The third vehicle 10C may be avehicle that goes to get the module from the first region L1 to thesecond region L2. The third vehicle 10C may move to the second region L2from a region other than the first region L1 and the second region L2,and may cause the module to be attached. The third vehicle 10C may causethe module to be further attached in another region, halfway through themovement from the second region L2 to the first region L1.

Then, in step S110, the operation command generation unit 303 sends theoperation command to the second vehicle 10B. In step S111, the operationcommand generation unit 303 sends the operation command to the thirdvehicle 10C. In step S112, the operation command generation unit 303sends the operation command to the first vehicle 10A. The routine mayproceed to step S111 after the process of step S110 finishes and arequired number of modules gather in the second region L2, and then, theoperation command generation unit 303 may send the operation command tothe third vehicle 10C. Further, the routine may proceed to step S112after the process of step S111 finishes and the third vehicle 10Carrives in the first region L1, and then, the operation commandgeneration unit 303 may send the operation command to the first vehicle10A.

Processing Flow: Vehicle

Next, a process of causing the vehicle 10 to travel will be described.FIG. 9 is an example of a flowchart of the process of causing thevehicle 10 to travel according to the embodiment. The process shown inFIG. 9 is executed by the processor 11 of the vehicle 10, at apredetermined time interval. The flowchart is executed by the vehicle 10in the standby state.

In step S201, the operation plan generation unit 101 determines whetherthe operation command has been received from the server 30. In the casewhere the positive determination is made in step S201, the routineproceeds to step S202, and in the case where the negative determinationis made, the routine ends. In step S202, the operation plan generationunit 101 generates the operation plan in accordance with the operationcommand. In step S203, the vehicle control unit 103 generates thecontrol command in accordance with the operation plan, and the driveunit 19 is controlled in accordance with the control command, so thatthe vehicle 10 moves. For example, the second vehicle 10B moves to thesecond factory F2, the first vehicle 10A moves to the first factory F1,and the third vehicle 10C first moves to the second factory F2 and thenmoves to the first factory F1. The third vehicle 10C may cause adifferent module to be attached in the first region L1, may return tothe second region L2, and may provide the different module to the secondvehicle 10B in the second region L2.

As described above, with the embodiment, the vehicle 10 transports themodule by autonomous traveling from the region where the module issuperfluous in number to the region where the module is insufficient innumber, and therefore, it is possible to restrain the module from beinginsufficient in number in a particular region. Here, when modules areprepared in consideration of the occurrence of the event and the like inall regions, it is necessary to produce more modules, leading to theincrease in cost. Further, when no event occurs, places for preservingmodules are needed. In contrast, with the automatic driving system 1according to the embodiment, it is not necessary to prepare more modulesthan is needed, and it is only necessary to provide a preservation placehaving a small area, so that the cost can be reduced. Further, byexchanging modules between the vehicles 10, it is not necessary toseparately provide places for preserving modules.

Other Embodiments

The above embodiment is just an example, and the disclosure can beappropriately modified to be carried out, without departing from thespirit of the disclosure.

The processes and means described in the disclosure can be arbitrarilycombined to be carried out, as long as the technical consistency iskept.

A process described as a process to be executed by a single device maybe executed by a plurality of devices in cooperation. Further, processesdescribed as processes to be executed by different devices may beexecuted by a single device. In the computer system, the hardwareconfiguration (server configuration) to realize each function can beflexibly modified. In the above embodiment, the server 30 includes thevehicle management unit 301, the adjustment unit 302, the operationcommand generation unit 303, the vehicle information DB 311, theadjustment information DB 312 and the map information DB 313, asfunctional constituent elements. However, some or all of the functionalconstituent elements may be included in the vehicle 10. For example, avehicle 10 that serves as the server 30 may be disposed in each region.Further, each vehicle 10 may have the same function as the server 30. Inthis case, the information indicating the insufficiency of the modulemay be sequentially transmitted to peripheral vehicles 10, usinginter-vehicle communication.

The disclosure can be realized also when a computer program in which thefunctions described in the above embodiment are implemented is suppliedto a computer and one or more processors included in the computer readand execute the program. The computer program may be provided to thecomputer by a non-transitory computer-readable storage medium that canbe connected with a system bus of the computer, or may be provided tothe computer through a network. Examples of the non-transitorycomputer-readable storage medium include an arbitrary type of disk anddisc such as a magnetic disk (a floppy (R) disk, a hard disk drive(HDD), and the like) and an optical disc (a CD-ROM, a DVD disc, aBlu-ray disc, and the like), a read only memory (ROM), a random accessmemory (RAM), an EPROM, and EEPROM, a magnetic card, a flash memory, anoptical card, and an arbitrary type of medium suitable for storingelectronic instructions.

What is claimed is:
 1. An information processing device comprising acontrol unit that executes: identifying a first region where apredetermined module is insufficient in number, the predetermined modulebeing a module that is attachable to and detachable from a movableobject; identifying a second region where the predetermined module issuperfluous in number; instructing a movable object equipped with thepredetermined module in the second region to provide the superfluouspredetermined module to a predetermined movable object; instructing thepredetermined movable object to cause the predetermined module to beattached in the second region and transport the predetermined module tothe first region; and instructing a movable object not equipped with thepredetermined module in the first region to receive the predeterminedmodule transported to the first region by the predetermined movableobject.
 2. The information processing device according to claim 1,wherein the control unit identifies the first region based on dataacquired by a sensor that detects a surrounding environment, the sensorbeing included in the movable object
 3. The information processingdevice according to claim 1, wherein the control unit identifies thesecond region based on a working state of the predetermined module. 4.An information processing method in which a computer executes:identifying a first region where a predetermined module is insufficientin number, the predetermined module being a module that is attachable toand detachable from a movable object; identifying a second region wherethe predetermined module is superfluous in number; instructing a movableobject equipped with the predetermined module in the second region toprovide the superfluous predetermined module to a predetermined movableobject; instructing the predetermined movable object to cause thepredetermined module to be attached in the second region and transportthe predetermined module to the first region; and instructing a movableobject not equipped with the predetermined module in the first region toreceive the predetermined module transported to the first region by thepredetermined movable object.
 5. A non-transitory storage medium storinginstructions that are executable by one or more processors and thatcause the one or more processors to perform functions comprising:identifying a first region where a predetermined module is insufficientin number, the predetermined module being a module that is attachable toand detachable from a movable object; identifying a second region wherethe predetermined module is superfluous in number; instructing a movableobject equipped with the predetermined module in the second region toprovide the superfluous predetermined module to a predetermined movableobject; instructing the predetermined movable object to cause thepredetermined module to be attached in the second region and transportthe predetermined module to the first region; and instructing a movableobject not equipped with the predetermined module in the first region toreceive the predetermined module transported to the first region by thepredetermined movable object.